package code.structure.module.configs.cmd
{
	import code.structure.module.configs.data.ItemConfigData;
	import code.structure.module.configs.data.attach.ProductAttachData;
	
	import flash.utils.Dictionary;

	/**
	 *  物品数据
	 * @author Yuri
	 * 
	 */
	public class AnalysisItem
	{
		/**
		 * 物品字典 
		 */
		private var _itemDataDic:Dictionary;
		public function AnalysisItem()
		{
			_itemDataDic = new Dictionary();
		}
		
		/**
		 *解析 
		 * @param itemData
		 * @param productData
		 * 
		 */
		public function parserData(itemData:Object,productData:Object):void{
			var d:ItemConfigData 
			for each(var o:Object in itemData){
				d = new ItemConfigData(o);
				_itemDataDic[d.id] = d;
			}
			for each(var oo:Object in productData){
				var dd:ProductAttachData = new ProductAttachData(oo);
				d =  getItemConfigDataById(dd.id);
				if(d) {
					d.productAttachData = dd;
					if(dd.feedId>0) dd.feedData = getItemConfigDataById(dd.feedId);
					if(dd.outputId>0) dd.outputData = getItemConfigDataById(dd.outputId)
				}
			}
		}
		
		/**
		 * 通过物品id获取配置数据 
		 * @param id
		 * @return 
		 * 
		 */
		public function getItemConfigDataById(id:int):ItemConfigData{
			return _itemDataDic[id] as ItemConfigData;
		}
	}
}